Lucid: Scope Structures and Defined Functions∗

نویسندگان

  • E. A. Ashcroft
  • W. W. Wadge
چکیده

In the paper we describe how Lucid can be extended to allow user-defined functions and scope conventions, i.e., conventions for limiting the range or scope of the validity of definitions. The new constructs added (they are called clauses) are similar in form to the blocks and procedure declarations of Algol-like languages, but are nevertheless strictly non-imperative, because a clause is actually a compound assertion, i.e., an assertion formed, as a program is, by combining a collection of assertions. Each type of clause (there are four) has a straightforward mathematical semantics together with its own characteristic “manipulation rules” for general program massage. In addition, the informal operational view of (some) Lucid programs (described in a previous paper) can be extended to give an (incomplete) operational understanding of the effect of the clauses. In this framework a compute clause defines a block; a mapping clause defines a conventional (pointwise) function; a produce clause defines a block with persistent memory (an anonymous ‘process’ or ‘actor’); and a function clause defines a general kind of coroutine.

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

Some remarks on choice functions and LF-movement

The discussion is indebted very much to the lucid representation given in Heim (1994) which, in several respects, is more elaborate than the account given here. Furthermore, I wish to thank Graham Katz, Manfred Kup er, Cecile Meier and Wolfgang Sternefeld for discussion and help. The article has pro ted enormously by the comments of two anonymous referees and several detailed suggestions by Kla...

متن کامل

ML–Lucid, an intensional functional language

In this paper, we define the ML-Lucid programming language, a generalization of Lucid and of the functional part of ML. ML-Lucid is a multi-dimensional language, and dimensions can be defined to be any ML data type. All functional ML objects can be used as the atomic objects of Lucid. The semantic of ML-Lucid are given using a Kripke semantics, where the universe of possible worlds is the arbit...

متن کامل

A Simulation of Demand-Driven Dataflow: Translation from Lucid into MDC Language

Message Driven Computation (MIX) is a model of computation with which we haw been eqerimenting at the Illinois Institute of Technology. It is our h i r e to prove the viability of MDC in practice for the expression of parallel algorithms and the implementation of ficnctional and datajlbw programming hguuges. In the following pages we &cuss our implementation of the Lucid programming language in...

متن کامل

Structured Lucid ∗

Structured Lucid is an ISWIM-like language formed by combining Basic Lucid and USWIM. Structured Lucid is almost a member of the USWIM family, except that a distinction is made between two kinds of function variables: those which denote functions mapping streams (histories) of data objects to streams of data objects, and those which denote streams of functions mapping data objects to data objec...

متن کامل

Multidimensional infinite data in the language Lucid

Although the language Lucid was not originally intended to support computing with infinite data structures, the notion of (infinite) sequence quickly came to the fore, together with a demanddriven computation model in which demands are propagated for the values of particular values at particular index points. This naturally generalized to sequences of multiple dimensions so that a programmer co...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

عنوان ژورنال:

دوره   شماره 

صفحات  -

تاریخ انتشار 2012